package cn.com.bluemoon.daps.common.enums;

import cn.com.bluemoon.daps.common.mp.BaseBmEnum;
import cn.hutool.core.util.EnumUtil;

/**
 * 脚本执行状态，1未执行，2已执行
 */
public enum ScriptRunStatus implements BaseBmEnum<Integer> {
    /**
     * 同步到模型、开发、测试、预发布、生产
     * 数据源环境，1-4表示开发、测试、预生产、生产
     * 其中模型为0（其中对应的数据源是开发库环境）
     */
    RUN_WAIT(1, "未执行"),
    RUN_DONE(2, "已执行");
    private final Integer code;
    private final String desc;

    ScriptRunStatus(Integer code, String desc) {
        this.code = code;
        this.desc = desc;
    }

    public static ScriptRunStatus valOf(Integer code) {
        ScriptRunStatus syncToEnv = EnumUtil.likeValueOf(ScriptRunStatus.class, code);
        return syncToEnv;
    }

    public Integer getCode() {
        return code;
    }

    public String getDesc() {
        return desc;
    }

    /**
     * 枚举数据库存储值
     */
    @Override
    public Integer getValue() {
        return this.code;
    }
}
